@mixin fade-effect() {
    animation-duration: .225s;
    animation-fill-mode: both;
    animation-timing-function: cubic-bezier(0.55, 0, 0.55, 0.2);
    animation-play-state: paused;
}

@mixin flex_center {
    display: flex;
    align-items: center;
    justify-content: center;
}

.rc-notification {
    top: 15px;
    position: fixed;
    z-index: 1000;
    border-radius: 2px;

    &-notice {
        padding: 10px 16px;
        border-radius: 3px 3px;
        border: 1px solid #999;
        box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
        border: 0px solid rgba(0, 0, 0, 0);
        background: #fff;
        display: block;
        width: auto;
        line-height: 1.5;
        position: relative;
        margin: 10px 0;

        &-closable {
            padding-right: 20px;
        }

        &-close {
            position: absolute;
            right: 5px;
            top: 3px;
            color: #000;
            cursor: pointer;
            outline: none;
            font-size: 16px;
            font-weight: 700;
            line-height: 1;
            text-shadow: 0 1px 0 #fff;
            filter: alpha(opacity=20);
            opacity: .2;
            text-decoration: none;

            &-x:after {
                content: '×';
            }

            &:hover {
                opacity: 1;
                filter: alpha(opacity=100);
                text-decoration: none;
            }
        }
    }

    &-fade-appear,
    &-fade-enter {
        opacity: 0;
        @include fade-effect();

    }

    &-fade-leave {
        @include fade-effect();
    }

    &-fade-appear-active,
    &-fade-enter-active {
        animation-name: rcNotificationFadeIn;
        animation-play-state: running;
    }

    &-fade-leave-active {
        animation-name: rcDialogFadeOut;
        animation-play-state: running;
    }

    @keyframes rcNotificationFadeIn {
        0% {
            opacity: 0;
            margin-top: -50px;
        }

        100% {
            opacity: 1;
            margin-top: 0px;
        }
    }

    @keyframes rcDialogFadeOut {
        0% {
            opacity: 1;
            margin-top: 0px;
        }

        100% {
            opacity: 0;
            margin-top: -50px;
        }
    }

    .xMessage {
        @include flex_center();

        .iconWrap {
            @include flex_center();
        }

        .success {
            path {
                fill: #52c41a;
            }
        }

        .info {
            path {
                fill: #91d5ff;
            }
        }

        .error {
            path {
                fill: #ff4d4f;
            }
        }

        .warning {
            path {
                fill: #faad14;
            }
        }

        .xNoticeTit {
            color: #5a5757d9;
            font-size: 14px;
            font-variant: tabular-nums;
            line-height: 1.5715;
            list-style: none;
            font-feature-settings: "tnum";
            padding: 2px 5px;
            @include flex_center();
        }
    }
}